



/**
 * created on 2012-04-25
 * @author  qiujz
 * @version 1.0
 *
 * Copyright (c)  Founder Software (Suzhou) Co., Ltd.  2012
 *  All rights reserved.
 *
 * 
 * ================================================================
 * Change Revision
 * ---------------------------------------------------------------
 *    DATE                BY                   COMMENT
 * ---------------------------------------------------------------
 * 2012-04-25         qiujz                Create class
 * 
 *
 * ================================================================
 */
 
package com.qjz.dao;

import java.util.List;
import java.util.Map;

import com.qjz.entity.DistinctTo;
import com.qjz.entity.StudentInfoTo;

public interface IStudentInfoDao {
	/**
	 * @param paramMap
	 *          查询参数
	 * @return 实体列表
	 */
	List<StudentInfoTo> searchStudentInfoList(Map<String, Object> paramMap);
	
	/**
	 * @param paramMap
	 *          查询参数
	 * @param startRow
	 *          分页起始行
	 * @param endRow
	 *          分页结束行
	 * @return 实体列表
	 */
	List<StudentInfoTo> searchStudentInfoPagination(
			Map<String, Object> paramMap, int startRow, int endRow);
	
	List<StudentInfoTo> searchStudentInfoPagination(Map<String, Object> paramMap);

	/**
	 * @param paramMap
	 *          查询参数
	 * @return 记录数
	 */
	Integer getStudentInfoCount(Map<String, Object> paramMap);
	
		
	/**
	 * @param sfid
	 *         PK	 
	 * @return 实体对象
	 */	
	StudentInfoTo getStudentInfoByPrimaryKey(int sfid);
	
	
	/**
	 * @param studentInfo
	 *           实体对象
	 * @return 新增对象
	 */
	Object insertStudentInfo(StudentInfoTo studentInfo);
	
	/**
	 * @param studentInfo
	 *           实体对象
	 * @return 更新记录数
	 */
	int updateStudentInfoByBean(StudentInfoTo studentInfo);
	
	/**
	 * @param paramMap
	 *          更新参数
	 * @return 更新记录数
	 */
	int updateStudentInfoByProperty(Map<String, Object> paramMap);	
	
	
	/**
	 * @param sfid
	 *         PK
	 * @return 删除记录数
	 */
	int deleteStudentInfoByPrimaryKey(int sfid);
	
	/**
	 * @param keyArray
	 *         主Key数组
	 */
	void deleteStudentInfoBatch(String[] keyArray);	
		
	int deleteStudentInfoByParamter(Map<String, Object> paramMap);
	
	void insertStudentInfoBatch(List<StudentInfoTo> list);
	
	List<DistinctTo> searchDistinctList();
	
	List<DistinctTo> searchBanJiList(String school);
}
